iT邦幫忙

2023 iThome 鐵人賽

DAY 13
0
自我挑戰組

Unit Test 學習路系列 第 13

Day 12: 什麼是 Code Coverage (二)

  • 分享至 

  • xImage
  •  

今天再多了解一些 Code Coverage 的寫法與應用。


自定義 Code Coverage

可以依照每個專案要求的測試要求去設定標準。像是:
package.json 中,加入 Jest 自定義 Code Coverage

{
    ...,
    "jest": {
        "collectCoverage": true,
        "coverageThreshold": {
            "global":{
                "branches": 80,   // if-esle 或 switch-case 邏輯片段測試覆蓋率要達到 80%
                "functions": 80,  // 函式中程式碼片段測試覆蓋率要達到 80%
                "lines": 80,      // 專案實際執行行數測試覆蓋率要達到 80%
                "statements": -10,// 全局指定覆蓋率容許值,以此專案為例,80%-10筆語句測試可接受
            }
        }
    }
}

每當執行 yarn coverage 檢查指定專案範圍內的測試項目,除了本身測試內容執行,還會依據上述的自定義覆蓋率顯示測試結果為 PASS 或 FAIL 與原因。

Code Coverage 對於未來執行 CI/CD 會有很大的幫助。


參考資源


上一篇
Day 11: 什麼是 Code Coverage(一)?
下一篇
Day 13: Jest Matcher 紀錄
系列文
Unit Test 學習路31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言